{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Pendulum Period vs. Initial Angle"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The initial boilerplate to start a sicmutils investigation:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "#'double-pendulum/tex"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(require '[clojupyter.misc.helper :as helper])\n",
    "(run! helper/add-dependencies '[[net.littleredcomputer/sicmutils \"0.12.0-SNAPSHOT\"]\n",
    "                                [thi.ng/geom \"0.0.908\"]])\n",
    "(ns double-pendulum\n",
    "    (:refer-clojure :exclude [partial zero? + - * / ref])\n",
    "    (:require [sicmutils.env :refer :all]\n",
    "              [sicmutils.examples.pendulum :as pendulum]\n",
    "              [clojupyter.misc.display :as display]\n",
    "              [thi.ng.geom.viz.core :as viz]\n",
    "              [thi.ng.geom.svg.core :as svg]\n",
    "              [thi.ng.color.core :as color]))\n",
    "(defn tex [x] (-> x tex$$ display/latex))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The pendulum library in the examples directory contains the Lagrangian for the simple pendulum with moving pivot. For this investigation, we want a pendulum with a fixed pivot, so we supply a constant function for the motion of the pivot. Let's double-check that the Lagrangian for the pendulum agrees with what we find on Wikipedia."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$$\\frac{1}{2}\\,{l}^{2}\\,m\\,{\\dot {\\theta}}^{2} + g\\,l\\,m\\,\\cos\\left(\\theta\\right)$$"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "  ;; The coordinates of the pivot as a function of time\n",
    "(defn fixed [t] (up 0 0))\n",
    "  ;; Obtain a fixed-pivot Lagrangian from the moving-pivot Lagrangian\n",
    "(defn L [m l g] (pendulum/L m l g fixed))\n",
    "  ;; Bind the contants to symbolic values, and supply symbolic initial data\n",
    "(tex ((L 'm 'l 'g) (up 't 'theta 'thetadot)))  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That looks [correct](https://en.wikipedia.org/wiki/Lagrangian_mechanics#Pendulum_on_a_movable_support). Now we form the state derivative:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$$\\begin{pmatrix}1\\\\\\dot {\\theta}\\\\\\frac{- g\\,\\sin\\left(\\theta\\right)}{l}\\end{pmatrix}$$"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(defn state-derivative [m l g]\n",
    "    (Lagrangian->state-derivative (L m l g)))\n",
    "(tex ((state-derivative 'm 'l 'g) (up 't 'theta 'thetadot)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "So far so good. The next step is to integrate the motion for various choices of initial displacement. We'll set $m = l = 1, g = 9.8$ here, and call the initial angle $\\theta_0$. We will run the simulation for 4 seconds, sampling every 1/60 second. Following that is some plotting boilerplate. We resume commentary at the graph below."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "#'double-pendulum/p"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(def g 9.8)\n",
    "(defn p [theta_0]\n",
    "    (integrate-state-derivative state-derivative [1 1 g] (up 0 theta_0 0) 4 1/60))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "#'double-pendulum/spec"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(def spec\n",
    "  {:x-axis (viz/linear-axis\n",
    "            {:domain [0 4]\n",
    "             :range  [50 (- 985 10)]\n",
    "             :major 1\n",
    "             :pos    550})\n",
    "   :y-axis (viz/linear-axis\n",
    "            {:domain      [(- Math/PI) Math/PI]\n",
    "             :range       [550 20]\n",
    "             :major       1\n",
    "             :minor       0.2\n",
    "             :pos         50\n",
    "             :label-dist  15\n",
    "             :label-style {:text-anchor \"end\"}})\n",
    "   :grid   {:attribs {:stroke \"#caa\"}\n",
    "            :minor-x true\n",
    "            :minor-y false}\n",
    "   :data   (for [a (range 0.15 2 0.15)]\n",
    "               {:values  (p a)\n",
    "                :attribs {:stroke (color/as-css (color/rgba 0.8 (/ a 2) 0 1)) :stroke-width \"2pt\"}\n",
    "                :layout  viz/svg-line-plot})\n",
    "})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now let's look at the output. For a small displacement, the high-school (linearized) calculation shows we should expect a period of $2\\pi\\sqrt{\\frac{l}g}\\approx 2.0$ in our case with $l=1$ and $g=9.8$. As the initial angular displacement increases, however, the period begins to rise."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<?xml version=\"1.0\"?>\n",
       "<svg height=\"600\" version=\"1.1\" width=\"985\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" xmlns=\"http://www.w3.org/2000/svg\"><g><g stroke-dasharray=\"1 1\" stroke=\"#caa\"><line x1=\"50.00\" x2=\"50.00\" y1=\"550.00\" y2=\"20.00\" /><line x1=\"281.25\" x2=\"281.25\" y1=\"550.00\" y2=\"20.00\" /><line x1=\"512.50\" x2=\"512.50\" y1=\"550.00\" y2=\"20.00\" /><line x1=\"743.75\" x2=\"743.75\" y1=\"550.00\" y2=\"20.00\" /><line x1=\"975.00\" x2=\"975.00\" y1=\"550.00\" y2=\"20.00\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"538.06\" y2=\"538.06\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"453.70\" y2=\"453.70\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"369.35\" y2=\"369.35\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"285.00\" y2=\"285.00\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"200.65\" y2=\"200.65\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"116.30\" y2=\"116.30\" /><line x1=\"50.00\" x2=\"975.00\" y1=\"31.94\" y2=\"31.94\" /></g><polyline fill=\"none\" points=\"50.00,272.35 53.85,272.36 57.71,272.42 61.56,272.50 65.42,272.62 69.27,272.77 73.13,272.96 76.98,273.18 80.83,273.43 84.69,273.71 88.54,274.02 92.40,274.37 96.25,274.74 100.10,275.14 103.96,275.56 107.81,276.02 111.67,276.49 115.52,276.99 119.38,277.51 123.23,278.05 127.08,278.61 130.94,279.19 134.79,279.79 138.65,280.39 142.50,281.01 146.35,281.64 150.21,282.29 154.06,282.93 157.92,283.59 161.77,284.24 165.63,284.90 169.48,285.56 173.33,286.22 177.19,286.87 181.04,287.52 184.90,288.17 188.75,288.80 192.60,289.42 196.46,290.03 200.31,290.63 204.17,291.22 208.02,291.78 211.88,292.33 215.73,292.86 219.58,293.36 223.44,293.84 227.29,294.30 231.15,294.74 235.00,295.15 238.85,295.52 242.71,295.88 246.56,296.20 250.42,296.49 254.27,296.75 258.13,296.98 261.98,297.17 265.83,297.34 269.69,297.47 273.54,297.56 277.40,297.62 281.25,297.65 285.10,297.64 288.96,297.60 292.81,297.53 296.67,297.42 300.52,297.28 304.38,297.10 308.23,296.89 312.08,296.65 315.94,296.38 319.79,296.07 323.65,295.74 327.50,295.37 331.35,294.98 335.21,294.56 339.06,294.12 342.92,293.65 346.77,293.16 350.63,292.64 354.48,292.11 358.33,291.55 362.19,290.98 366.04,290.39 369.90,289.79 373.75,289.17 377.60,288.54 381.46,287.91 385.31,287.26 389.17,286.61 393.02,285.95 396.88,285.29 400.73,284.63 404.58,283.98 408.44,283.32 412.29,282.67 416.15,282.02 420.00,281.39 423.85,280.76 427.71,280.15 431.56,279.54 435.42,278.96 439.27,278.39 443.13,277.83 446.98,277.30 450.83,276.79 454.69,276.30 458.54,275.83 462.40,275.39 466.25,274.97 470.10,274.59 473.96,274.23 477.81,273.89 481.67,273.59 485.52,273.32 489.38,273.09 493.23,272.88 497.08,272.71 500.94,272.57 504.79,272.46 508.65,272.39 512.50,272.35 516.35,272.35 520.21,272.38 524.06,272.45 527.92,272.55 531.77,272.68 535.63,272.85 539.48,273.04 543.33,273.28 547.19,273.54 551.04,273.83 554.90,274.16 558.75,274.51 562.60,274.90 566.46,275.31 570.31,275.74 574.17,276.21 578.02,276.69 581.88,277.20 585.73,277.73 589.58,278.28 593.44,278.85 597.29,279.43 601.15,280.03 605.00,280.64 608.85,281.27 612.71,281.90 616.56,282.55 620.42,283.20 624.27,283.85 628.13,284.51 631.98,285.17 635.83,285.83 639.69,286.48 643.54,287.14 647.40,287.78 651.25,288.42 655.10,289.05 658.96,289.67 662.81,290.28 666.67,290.87 670.52,291.45 674.38,292.00 678.23,292.54 682.08,293.06 685.94,293.56 689.79,294.03 693.65,294.48 697.50,294.91 701.35,295.30 705.21,295.67 709.06,296.01 712.92,296.32 716.77,296.60 720.63,296.85 724.48,297.06 728.33,297.24 732.19,297.39 736.04,297.51 739.90,297.59 743.75,297.64 747.60,297.65 751.46,297.63 755.31,297.58 759.17,297.49 763.02,297.36 766.88,297.21 770.73,297.02 774.58,296.80 778.44,296.54 782.29,296.26 786.15,295.94 790.00,295.59 793.85,295.22 797.71,294.82 801.56,294.39 805.42,293.93 809.27,293.45 813.13,292.95 816.98,292.43 820.83,291.89 824.69,291.32 828.54,290.74 832.40,290.15 836.25,289.54 840.10,288.92 843.96,288.29 847.81,287.65 851.67,287.00 855.52,286.34 859.38,285.69 863.23,285.03 867.08,284.37 870.94,283.71 874.79,283.06 878.65,282.41 882.50,281.77 886.35,281.13 890.21,280.51 894.06,279.90 897.92,279.30 901.77,278.72 905.63,278.16 909.48,277.61 913.33,277.09 917.19,276.59 921.04,276.11 924.90,275.65 928.75,275.22 932.60,274.81 936.46,274.44 940.31,274.09 944.17,273.77 948.02,273.48 951.88,273.22 955.73,273.00 959.58,272.81 963.44,272.65 967.29,272.52 971.15,272.43\" stroke-width=\"2pt\" stroke=\"#cc1300\" /><polyline fill=\"none\" points=\"50.00,259.69 53.85,259.73 57.71,259.83 61.56,260.00 65.42,260.24 69.27,260.54 73.13,260.91 76.98,261.34 80.83,261.84 84.69,262.39 88.54,263.01 92.40,263.69 96.25,264.43 100.10,265.22 103.96,266.07 107.81,266.96 111.67,267.91 115.52,268.90 119.38,269.93 123.23,271.01 127.08,272.12 130.94,273.27 134.79,274.45 138.65,275.66 142.50,276.89 146.35,278.15 150.21,279.42 154.06,280.71 157.92,282.01 161.77,283.32 165.63,284.64 169.48,285.95 173.33,287.26 177.19,288.57 181.04,289.87 184.90,291.15 188.75,292.42 192.60,293.66 196.46,294.89 200.31,296.08 204.17,297.25 208.02,298.38 211.88,299.48 215.73,300.54 219.58,301.55 223.44,302.52 227.29,303.44 231.15,304.32 235.00,305.14 238.85,305.91 242.71,306.62 246.56,307.27 250.42,307.86 254.27,308.39 258.13,308.86 261.98,309.27 265.83,309.61 269.69,309.88 273.54,310.08 277.40,310.22 281.25,310.30 285.10,310.30 288.96,310.23 292.81,310.10 296.67,309.90 300.52,309.64 304.38,309.31 308.23,308.91 312.08,308.45 315.94,307.92 319.79,307.34 323.65,306.69 327.50,305.99 331.35,305.22 335.21,304.41 339.06,303.54 342.92,302.62 346.77,301.66 350.63,300.65 354.48,299.59 358.33,298.50 362.19,297.37 366.04,296.21 369.90,295.02 373.75,293.79 377.60,292.55 381.46,291.29 385.31,290.00 389.17,288.71 393.02,287.40 396.88,286.09 400.73,284.78 404.58,283.46 408.44,282.15 412.29,280.85 416.15,279.56 420.00,278.28 423.85,277.02 427.71,275.79 431.56,274.58 435.42,273.39 439.27,272.24 443.13,271.12 446.98,270.04 450.83,269.01 454.69,268.01 458.54,267.06 462.40,266.16 466.25,265.31 470.10,264.51 473.96,263.77 477.81,263.08 481.67,262.46 485.52,261.89 489.38,261.39 493.23,260.95 497.08,260.57 500.94,260.26 504.79,260.02 508.65,259.84 512.50,259.74 516.35,259.69 520.21,259.72 524.06,259.82 527.92,259.98 531.77,260.21 535.63,260.50 539.48,260.86 543.33,261.29 547.19,261.78 551.04,262.33 554.90,262.95 558.75,263.62 562.60,264.35 566.46,265.13 570.31,265.97 574.17,266.86 578.02,267.80 581.88,268.79 585.73,269.82 589.58,270.89 593.44,272.00 597.29,273.14 601.15,274.32 605.00,275.53 608.85,276.76 612.71,278.01 616.56,279.28 620.42,280.57 624.27,281.87 628.13,283.18 631.98,284.50 635.83,285.81 639.69,287.12 643.54,288.43 647.40,289.73 651.25,291.01 655.10,292.28 658.96,293.53 662.81,294.76 666.67,295.96 670.52,297.13 674.38,298.26 678.23,299.36 682.08,300.43 685.94,301.45 689.79,302.42 693.65,303.35 697.50,304.23 701.35,305.05 705.21,305.83 709.06,306.54 712.92,307.20 716.77,307.80 720.63,308.34 724.48,308.82 728.33,309.23 732.19,309.57 736.04,309.85 739.90,310.07 743.75,310.21 747.60,310.29 751.46,310.30 755.31,310.24 759.17,310.12 763.02,309.93 766.88,309.67 770.73,309.34 774.58,308.95 778.44,308.50 782.29,307.98 786.15,307.40 790.00,306.76 793.85,306.06 797.71,305.31 801.56,304.50 805.42,303.63 809.27,302.72 813.13,301.76 816.98,300.76 820.83,299.71 824.69,298.62 828.54,297.49 832.40,296.33 836.25,295.14 840.10,293.93 843.96,292.68 847.81,291.42 851.67,290.14 855.52,288.85 859.38,287.54 863.23,286.23 867.08,284.92 870.94,283.60 874.79,282.29 878.65,280.99 882.50,279.69 886.35,278.42 890.21,277.16 894.06,275.92 897.92,274.70 901.77,273.52 905.63,272.36 909.48,271.24 913.33,270.16 917.19,269.11 921.04,268.11 924.90,267.16 928.75,266.25 932.60,265.40 936.46,264.59 940.31,263.84 944.17,263.15 948.02,262.52 951.88,261.95 955.73,261.44 959.58,260.99 963.44,260.61 967.29,260.29 971.15,260.04\" stroke-width=\"2pt\" stroke=\"#cc2600\" /><polyline fill=\"none\" points=\"50.00,247.04 53.85,247.09 57.71,247.24 61.56,247.49 65.42,247.84 69.27,248.28 73.13,248.83 76.98,249.46 80.83,250.20 84.69,251.02 88.54,251.93 92.40,252.94 96.25,254.02 100.10,255.19 103.96,256.44 107.81,257.76 111.67,259.16 115.52,260.63 119.38,262.16 123.23,263.76 127.08,265.41 130.94,267.11 134.79,268.86 138.65,270.66 142.50,272.49 146.35,274.36 150.21,276.26 154.06,278.18 157.92,280.12 161.77,282.07 165.63,284.03 169.48,286.00 173.33,287.96 177.19,289.91 181.04,291.85 184.90,293.77 188.75,295.67 192.60,297.54 196.46,299.37 200.31,301.17 204.17,302.92 208.02,304.62 211.88,306.27 215.73,307.86 219.58,309.39 223.44,310.86 227.29,312.26 231.15,313.58 235.00,314.83 238.85,316.00 242.71,317.08 246.56,318.08 250.42,318.99 254.27,319.82 258.13,320.55 261.98,321.18 265.83,321.72 269.69,322.17 273.54,322.51 277.40,322.76 281.25,322.91 285.10,322.96 288.96,322.91 292.81,322.76 296.67,322.50 300.52,322.16 304.38,321.71 308.23,321.16 312.08,320.52 315.94,319.79 319.79,318.97 323.65,318.05 327.50,317.05 331.35,315.96 335.21,314.79 339.06,313.54 342.92,312.21 346.77,310.81 350.63,309.35 354.48,307.81 358.33,306.22 362.19,304.57 366.04,302.86 369.90,301.11 373.75,299.31 377.60,297.48 381.46,295.61 385.31,293.71 389.17,291.79 393.02,289.85 396.88,287.89 400.73,285.93 404.58,283.97 408.44,282.01 412.29,280.06 416.15,278.12 420.00,276.20 423.85,274.30 427.71,272.43 431.56,270.60 435.42,268.81 439.27,267.05 443.13,265.35 446.98,263.70 450.83,262.11 454.69,260.58 458.54,259.12 462.40,257.72 466.25,256.40 470.10,255.15 473.96,253.99 477.81,252.90 481.67,251.90 485.52,250.99 489.38,250.17 493.23,249.44 497.08,248.81 500.94,248.27 504.79,247.83 508.65,247.48 512.50,247.23 516.35,247.09 520.21,247.04 524.06,247.09 527.92,247.25 531.77,247.50 535.63,247.85 539.48,248.30 543.33,248.85 547.19,249.49 551.04,250.22 554.90,251.05 558.75,251.96 562.60,252.97 566.46,254.06 570.31,255.23 574.17,256.48 578.02,257.81 581.88,259.21 585.73,260.68 589.58,262.21 593.44,263.81 597.29,265.46 601.15,267.17 605.00,268.92 608.85,270.72 612.71,272.55 616.56,274.42 620.42,276.32 624.27,278.24 628.13,280.18 631.98,282.14 635.83,284.10 639.69,286.06 643.54,288.02 647.40,289.97 651.25,291.91 655.10,293.83 658.96,295.73 662.81,297.60 666.67,299.43 670.52,301.22 674.38,302.97 678.23,304.68 682.08,306.32 685.94,307.91 689.79,309.44 693.65,310.91 697.50,312.30 701.35,313.62 705.21,314.87 709.06,316.03 712.92,317.12 716.77,318.11 720.63,319.02 724.48,319.84 728.33,320.57 732.19,321.20 736.04,321.74 739.90,322.18 743.75,322.52 747.60,322.77 751.46,322.91 755.31,322.96 759.17,322.90 763.02,322.75 766.88,322.50 770.73,322.14 774.58,321.69 778.44,321.14 782.29,320.50 786.15,319.77 790.00,318.94 793.85,318.02 797.71,317.01 801.56,315.92 805.42,314.75 809.27,313.50 813.13,312.17 816.98,310.77 820.83,309.30 824.69,307.76 828.54,306.16 832.40,304.51 836.25,302.80 840.10,301.05 843.96,299.25 847.81,297.42 851.67,295.55 855.52,293.65 859.38,291.73 863.23,289.78 867.08,287.83 870.94,285.87 874.79,283.91 878.65,281.95 882.50,279.99 886.35,278.05 890.21,276.14 894.06,274.24 897.92,272.37 901.77,270.54 905.63,268.75 909.48,267.00 913.33,265.30 917.19,263.65 921.04,262.06 924.90,260.53 928.75,259.07 932.60,257.68 936.46,256.36 940.31,255.11 944.17,253.95 948.02,252.87 951.88,251.87 955.73,250.96 959.58,250.15 963.44,249.42 967.29,248.79 971.15,248.25 975.00,247.81\" stroke-width=\"2pt\" stroke=\"#cc3900\" /><polyline fill=\"none\" points=\"50.00,234.39 53.85,234.45 57.71,234.65 61.56,234.97 65.42,235.42 69.27,236.00 73.13,236.71 76.98,237.54 80.83,238.49 84.69,239.56 88.54,240.75 92.40,242.05 96.25,243.47 100.10,245.00 103.96,246.63 107.81,248.36 111.67,250.19 115.52,252.10 119.38,254.11 123.23,256.20 127.08,258.37 130.94,260.60 134.79,262.91 138.65,265.27 142.50,267.68 146.35,270.15 150.21,272.65 154.06,275.18 157.92,277.75 161.77,280.33 165.63,282.92 169.48,285.53 173.33,288.12 177.19,290.72 181.04,293.29 184.90,295.84 188.75,298.37 192.60,300.85 196.46,303.30 200.31,305.69 204.17,308.03 208.02,310.31 211.88,312.52 215.73,314.65 219.58,316.71 223.44,318.68 227.29,320.56 231.15,322.35 235.00,324.04 238.85,325.63 242.71,327.11 246.56,328.49 250.42,329.74 254.27,330.89 258.13,331.91 261.98,332.81 265.83,333.59 269.69,334.25 273.54,334.77 277.40,335.17 281.25,335.45 285.10,335.59 288.96,335.60 292.81,335.48 296.67,335.24 300.52,334.86 304.38,334.36 308.23,333.73 312.08,332.97 315.94,332.09 319.79,331.09 323.65,329.97 327.50,328.74 331.35,327.39 335.21,325.93 339.06,324.36 342.92,322.69 346.77,320.92 350.63,319.05 354.48,317.09 358.33,315.05 362.19,312.93 366.04,310.74 369.90,308.47 373.75,306.15 377.60,303.76 381.46,301.33 385.31,298.85 389.17,296.33 393.02,293.78 396.88,291.21 400.73,288.62 404.58,286.03 408.44,283.42 412.29,280.83 416.15,278.24 420.00,275.68 423.85,273.13 427.71,270.62 431.56,268.15 435.42,265.73 439.27,263.36 443.13,261.04 446.98,258.79 450.83,256.61 454.69,254.51 458.54,252.48 462.40,250.55 466.25,248.70 470.10,246.95 473.96,245.30 477.81,243.76 481.67,242.32 485.52,240.99 489.38,239.78 493.23,238.68 497.08,237.71 500.94,236.86 504.79,236.13 508.65,235.52 512.50,235.05 516.35,234.70 520.21,234.48 524.06,234.39 527.92,234.43 531.77,234.60 535.63,234.90 539.48,235.33 543.33,235.88 547.19,236.56 551.04,237.37 554.90,238.30 558.75,239.34 562.60,240.51 566.46,241.80 570.31,243.19 574.17,244.70 578.02,246.31 581.88,248.02 585.73,249.83 589.58,251.73 593.44,253.72 597.29,255.79 601.15,257.94 605.00,260.17 608.85,262.46 612.71,264.81 616.56,267.22 620.42,269.67 624.27,272.17 628.13,274.70 631.98,277.25 635.83,279.83 639.69,282.43 643.54,285.03 647.40,287.63 651.25,290.22 655.10,292.80 658.96,295.35 662.81,297.88 666.67,300.38 670.52,302.83 674.38,305.24 678.23,307.59 682.08,309.88 685.94,312.10 689.79,314.25 693.65,316.32 697.50,318.31 701.35,320.21 705.21,322.02 709.06,323.73 712.92,325.34 716.77,326.84 720.63,328.23 724.48,329.51 728.33,330.68 732.19,331.72 736.04,332.65 739.90,333.45 743.75,334.13 747.60,334.68 751.46,335.11 755.31,335.40 759.17,335.57 763.02,335.61 766.88,335.52 770.73,335.29 774.58,334.94 778.44,334.47 782.29,333.86 786.15,333.13 790.00,332.27 793.85,331.30 797.71,330.20 801.56,328.98 805.42,327.65 809.27,326.21 813.13,324.67 816.98,323.02 820.83,321.26 824.69,319.42 828.54,317.48 832.40,315.45 836.25,313.35 840.10,311.17 843.96,308.91 847.81,306.60 851.67,304.22 855.52,301.80 859.38,299.33 863.23,296.82 867.08,294.27 870.94,291.71 874.79,289.12 878.65,286.52 882.50,283.92 886.35,281.33 890.21,278.74 894.06,276.17 897.92,273.62 901.77,271.10 905.63,268.63 909.48,266.19 913.33,263.81 917.19,261.48 921.04,259.22 924.90,257.02 928.75,254.91 932.60,252.87 936.46,250.91 940.31,249.05 944.17,247.28 948.02,245.61 951.88,244.05 955.73,242.59 959.58,241.24 963.44,240.00 967.29,238.89 971.15,237.89\" stroke-width=\"2pt\" stroke=\"#cc4d00\" /><polyline fill=\"none\" points=\"50.00,221.74 53.85,221.81 57.71,222.05 61.56,222.44 65.42,222.98 69.27,223.68 73.13,224.54 76.98,225.54 80.83,226.69 84.69,227.99 88.54,229.43 92.40,231.01 96.25,232.73 100.10,234.58 103.96,236.57 107.81,238.67 111.67,240.90 115.52,243.24 119.38,245.69 123.23,248.24 127.08,250.89 130.94,253.63 134.79,256.46 138.65,259.36 142.50,262.33 146.35,265.36 150.21,268.44 154.06,271.57 157.92,274.73 161.77,277.92 165.63,281.13 169.48,284.35 173.33,287.58 177.19,290.79 181.04,293.99 184.90,297.17 188.75,300.31 192.60,303.42 196.46,306.47 200.31,309.46 204.17,312.39 208.02,315.24 211.88,318.02 215.73,320.71 219.58,323.30 223.44,325.79 227.29,328.18 231.15,330.45 235.00,332.60 238.85,334.64 242.71,336.54 246.56,338.31 250.42,339.95 254.27,341.45 258.13,342.81 261.98,344.02 265.83,345.08 269.69,345.99 273.54,346.75 277.40,347.36 281.25,347.81 285.10,348.11 288.96,348.25 292.81,348.24 296.67,348.06 300.52,347.74 304.38,347.25 308.23,346.61 312.08,345.82 315.94,344.88 319.79,343.79 323.65,342.55 327.50,341.16 331.35,339.64 335.21,337.97 339.06,336.17 342.92,334.24 346.77,332.18 350.63,330.01 354.48,327.71 358.33,325.30 362.19,322.79 366.04,320.18 369.90,317.47 373.75,314.68 377.60,311.81 381.46,308.87 385.31,305.86 389.17,302.80 393.02,299.69 396.88,296.54 400.73,293.36 404.58,290.15 408.44,286.94 412.29,283.71 416.15,280.49 420.00,277.28 423.85,274.10 427.71,270.94 431.56,267.82 435.42,264.75 439.27,261.73 443.13,258.77 446.98,255.89 450.83,253.08 454.69,250.36 458.54,247.73 462.40,245.19 466.25,242.77 470.10,240.45 473.96,238.24 477.81,236.16 481.67,234.21 485.52,232.38 489.38,230.69 493.23,229.13 497.08,227.72 500.94,226.45 504.79,225.33 508.65,224.35 512.50,223.53 516.35,222.86 520.21,222.35 524.06,221.99 527.92,221.79 531.77,221.74 535.63,221.85 539.48,222.11 543.33,222.54 547.19,223.11 551.04,223.84 554.90,224.72 558.75,225.76 562.60,226.94 566.46,228.26 570.31,229.73 574.17,231.34 578.02,233.09 581.88,234.97 585.73,236.98 589.58,239.11 593.44,241.36 597.29,243.72 601.15,246.19 605.00,248.76 608.85,251.43 612.71,254.19 616.56,257.03 620.42,259.94 624.27,262.93 628.13,265.97 631.98,269.06 635.83,272.19 639.69,275.36 643.54,278.56 647.40,281.77 651.25,285.00 655.10,288.22 658.96,291.43 662.81,294.63 666.67,297.80 670.52,300.93 674.38,304.03 678.23,307.07 682.08,310.05 685.94,312.96 689.79,315.80 693.65,318.56 697.50,321.23 701.35,323.80 705.21,326.28 709.06,328.64 712.92,330.89 716.77,333.02 720.63,335.03 724.48,336.91 728.33,338.65 732.19,340.26 736.04,341.73 739.90,343.06 743.75,344.24 747.60,345.27 751.46,346.16 755.31,346.89 759.17,347.46 763.02,347.89 766.88,348.15 770.73,348.26 774.58,348.21 778.44,348.01 782.29,347.65 786.15,347.14 790.00,346.47 793.85,345.65 797.71,344.67 801.56,343.55 805.42,342.28 809.27,340.87 813.13,339.32 816.98,337.62 820.83,335.80 824.69,333.84 828.54,331.76 832.40,329.56 836.25,327.24 840.10,324.81 843.96,322.28 847.81,319.65 851.67,316.92 855.52,314.12 859.38,311.23 863.23,308.28 867.08,305.26 870.94,302.18 874.79,299.07 878.65,295.91 882.50,292.72 886.35,289.51 890.21,286.29 894.06,283.07 897.92,279.85 901.77,276.65 905.63,273.47 909.48,270.32 913.33,267.21 917.19,264.14 921.04,261.14 924.90,258.19 928.75,255.32 932.60,252.53 936.46,249.83 940.31,247.21 944.17,244.70 948.02,242.29 951.88,240.00 955.73,237.82 959.58,235.76 963.44,233.83 967.29,232.03 971.15,230.37 975.00,228.84\" stroke-width=\"2pt\" stroke=\"#cc6000\" /><polyline fill=\"none\" points=\"50.00,209.08 53.85,209.17 57.71,209.44 61.56,209.89 65.42,210.52 69.27,211.32 73.13,212.30 76.98,213.46 80.83,214.79 84.69,216.28 88.54,217.95 92.40,219.78 96.25,221.76 100.10,223.91 103.96,226.20 107.81,228.65 111.67,231.24 115.52,233.96 119.38,236.81 123.23,239.79 127.08,242.88 130.94,246.09 134.79,249.40 138.65,252.80 142.50,256.28 146.35,259.85 150.21,263.48 154.06,267.17 157.92,270.90 161.77,274.68 165.63,278.48 169.48,282.30 173.33,286.13 177.19,289.95 181.04,293.76 184.90,297.55 188.75,301.31 192.60,305.02 196.46,308.67 200.31,312.26 204.17,315.78 208.02,319.22 211.88,322.57 215.73,325.81 219.58,328.95 223.44,331.98 227.29,334.89 231.15,337.66 235.00,340.31 238.85,342.81 242.71,345.17 246.56,347.38 250.42,349.43 254.27,351.32 258.13,353.05 261.98,354.62 265.83,356.02 269.69,357.24 273.54,358.30 277.40,359.17 281.25,359.87 285.10,360.40 288.96,360.74 292.81,360.90 296.67,360.89 300.52,360.69 304.38,360.31 308.23,359.76 312.08,359.03 315.94,358.12 319.79,357.04 323.65,355.78 327.50,354.35 331.35,352.76 335.21,351.00 339.06,349.07 342.92,346.99 346.77,344.76 350.63,342.37 354.48,339.84 358.33,337.18 362.19,334.38 366.04,331.45 369.90,328.40 373.75,325.24 377.60,321.97 381.46,318.61 385.31,315.16 389.17,311.62 393.02,308.02 396.88,304.35 400.73,300.64 404.58,296.88 408.44,293.08 412.29,289.27 416.15,285.44 420.00,281.62 423.85,277.80 427.71,274.00 431.56,270.23 435.42,266.50 439.27,262.82 443.13,259.20 446.98,255.65 450.83,252.18 454.69,248.80 458.54,245.51 462.40,242.32 466.25,239.25 470.10,236.29 473.96,233.46 477.81,230.76 481.67,228.20 485.52,225.78 489.38,223.51 493.23,221.40 497.08,219.44 500.94,217.64 504.79,216.00 508.65,214.54 512.50,213.24 516.35,212.12 520.21,211.17 524.06,210.39 527.92,209.80 531.77,209.38 535.63,209.14 539.48,209.09 543.33,209.21 547.19,209.51 551.04,209.99 554.90,210.65 558.75,211.49 562.60,212.50 566.46,213.68 570.31,215.04 574.17,216.57 578.02,218.26 581.88,220.12 585.73,222.14 589.58,224.31 593.44,226.63 597.29,229.10 601.15,231.71 605.00,234.46 608.85,237.34 612.71,240.33 616.56,243.45 620.42,246.67 624.27,250.00 628.13,253.42 631.98,256.92 635.83,260.49 639.69,264.13 643.54,267.83 647.40,271.58 651.25,275.36 655.10,279.16 658.96,282.99 662.81,286.81 666.67,290.64 670.52,294.45 674.38,298.23 678.23,301.97 682.08,305.67 685.94,309.32 689.79,312.90 693.65,316.40 697.50,319.83 701.35,323.16 705.21,326.38 709.06,329.51 712.92,332.51 716.77,335.39 720.63,338.15 724.48,340.77 728.33,343.24 732.19,345.57 736.04,347.75 739.90,349.78 743.75,351.64 747.60,353.35 751.46,354.88 755.31,356.25 759.17,357.44 763.02,358.47 766.88,359.31 770.73,359.98 774.58,360.47 778.44,360.78 782.29,360.91 786.15,360.86 790.00,360.64 793.85,360.23 797.71,359.64 801.56,358.88 805.42,357.94 809.27,356.82 813.13,355.54 816.98,354.08 820.83,352.45 824.69,350.66 828.54,348.71 832.40,346.60 836.25,344.34 840.10,341.93 843.96,339.38 847.81,336.68 851.67,333.86 855.52,330.91 859.38,327.84 863.23,324.66 867.08,321.38 870.94,318.00 874.79,314.53 878.65,310.98 882.50,307.37 886.35,303.69 890.21,299.97 894.06,296.20 897.92,292.40 901.77,288.58 905.63,284.76 909.48,280.93 913.33,277.11 917.19,273.32 921.04,269.56 924.90,265.84 928.75,262.17 932.60,258.56 936.46,255.02 940.31,251.57 944.17,248.20 948.02,244.93 951.88,241.76 955.73,238.71 959.58,235.77 963.44,232.97 967.29,230.29 971.15,227.76\" stroke-width=\"2pt\" stroke=\"#cc7300\" /><polyline fill=\"none\" points=\"50.00,196.43 53.85,196.53 57.71,196.83 61.56,197.33 65.42,198.02 69.27,198.91 73.13,200.00 76.98,201.28 80.83,202.76 84.69,204.42 88.54,206.27 92.40,208.31 96.25,210.53 100.10,212.92 103.96,215.49 107.81,218.23 111.67,221.13 115.52,224.18 119.38,227.39 123.23,230.75 127.08,234.24 130.94,237.86 134.79,241.60 138.65,245.46 142.50,249.42 146.35,253.47 150.21,257.61 154.06,261.82 157.92,266.09 161.77,270.42 165.63,274.78 169.48,279.17 173.33,283.58 177.19,287.99 181.04,292.39 184.90,296.78 188.75,301.13 192.60,305.43 196.46,309.69 200.31,313.87 204.17,317.98 208.02,322.00 211.88,325.93 215.73,329.74 219.58,333.44 223.44,337.02 227.29,340.46 231.15,343.77 235.00,346.92 238.85,349.92 242.71,352.77 246.56,355.44 250.42,357.95 254.27,360.28 258.13,362.44 261.98,364.41 265.83,366.19 269.69,367.79 273.54,369.20 277.40,370.41 281.25,371.43 285.10,372.25 288.96,372.87 292.81,373.30 296.67,373.53 300.52,373.56 304.38,373.39 308.23,373.02 312.08,372.45 315.94,371.68 319.79,370.72 323.65,369.57 327.50,368.21 331.35,366.67 335.21,364.94 339.06,363.02 342.92,360.92 346.77,358.64 350.63,356.19 354.48,353.56 358.33,350.76 362.19,347.81 366.04,344.69 369.90,341.43 373.75,338.03 377.60,334.49 381.46,330.82 385.31,327.04 389.17,323.15 393.02,319.15 396.88,315.07 400.73,310.90 404.58,306.67 408.44,302.38 412.29,298.04 416.15,293.66 420.00,289.26 423.85,284.85 427.71,280.44 431.56,276.05 435.42,271.67 439.27,267.34 443.13,263.05 446.98,258.82 450.83,254.66 454.69,250.58 458.54,246.59 462.40,242.70 466.25,238.93 470.10,235.27 473.96,231.74 477.81,228.35 481.67,225.09 485.52,221.99 489.38,219.05 493.23,216.26 497.08,213.65 500.94,211.20 504.79,208.93 508.65,206.84 512.50,204.94 516.35,203.22 520.21,201.69 524.06,200.35 527.92,199.21 531.77,198.26 535.63,197.51 539.48,196.95 543.33,196.60 547.19,196.44 551.04,196.48 554.90,196.72 558.75,197.16 562.60,197.80 566.46,198.64 570.31,199.67 574.17,200.89 578.02,202.31 581.88,203.92 585.73,205.72 589.58,207.70 593.44,209.87 597.29,212.21 601.15,214.73 605.00,217.42 608.85,220.27 612.71,223.28 616.56,226.45 620.42,229.76 624.27,233.21 628.13,236.80 631.98,240.51 635.83,244.33 639.69,248.26 643.54,252.29 647.40,256.41 651.25,260.60 655.10,264.85 658.96,269.16 662.81,273.52 666.67,277.90 670.52,282.30 674.38,286.72 678.23,291.12 682.08,295.51 685.94,299.87 689.79,304.19 693.65,308.46 697.50,312.67 701.35,316.80 705.21,320.85 709.06,324.80 712.92,328.65 716.77,332.39 720.63,336.00 724.48,339.48 728.33,342.83 732.19,346.03 736.04,349.07 739.90,351.96 743.75,354.69 747.60,357.24 751.46,359.63 755.31,361.83 759.17,363.86 763.02,365.70 766.88,367.35 770.73,368.81 774.58,370.08 778.44,371.15 782.29,372.03 786.15,372.71 790.00,373.20 793.85,373.48 797.71,373.57 801.56,373.46 805.42,373.14 809.27,372.63 813.13,371.93 816.98,371.02 820.83,369.92 824.69,368.62 828.54,367.14 832.40,365.46 836.25,363.60 840.10,361.55 843.96,359.32 847.81,356.91 851.67,354.33 855.52,351.59 859.38,348.68 863.23,345.61 867.08,342.39 870.94,339.03 874.79,335.53 878.65,331.90 882.50,328.14 886.35,324.28 890.21,320.32 894.06,316.26 897.92,312.11 901.77,307.90 905.63,303.62 909.48,299.29 913.33,294.93 917.19,290.54 921.04,286.13 924.90,281.72 928.75,277.31 932.60,272.93 936.46,268.58 940.31,264.28 944.17,260.03 948.02,255.85 951.88,251.75 955.73,247.73 959.58,243.82 963.44,240.01 967.29,236.31 971.15,232.75\" stroke-width=\"2pt\" stroke=\"#cc8600\" /><polyline fill=\"none\" points=\"50.00,183.78 53.85,183.88 57.71,184.21 61.56,184.74 65.42,185.49 69.27,186.45 73.13,187.62 76.98,189.00 80.83,190.59 84.69,192.38 88.54,194.39 92.40,196.59 96.25,198.99 100.10,201.59 103.96,204.37 107.81,207.35 111.67,210.51 115.52,213.85 119.38,217.35 123.23,221.03 127.08,224.86 130.94,228.84 134.79,232.96 138.65,237.21 142.50,241.59 146.35,246.08 150.21,250.68 154.06,255.36 157.92,260.13 161.77,264.96 165.63,269.84 169.48,274.77 173.33,279.72 177.19,284.69 181.04,289.65 184.90,294.61 188.75,299.54 192.60,304.43 196.46,309.27 200.31,314.04 204.17,318.74 208.02,323.34 211.88,327.85 215.73,332.24 219.58,336.51 223.44,340.65 227.29,344.65 231.15,348.50 235.00,352.19 238.85,355.72 242.71,359.08 246.56,362.26 250.42,365.26 254.27,368.07 258.13,370.69 261.98,373.12 265.83,375.35 269.69,377.37 273.54,379.20 277.40,380.81 281.25,382.22 285.10,383.42 288.96,384.40 292.81,385.18 296.67,385.74 300.52,386.09 304.38,386.22 308.23,386.14 312.08,385.85 315.94,385.34 319.79,384.62 323.65,383.69 327.50,382.54 331.35,381.19 335.21,379.62 339.06,377.85 342.92,375.88 346.77,373.70 350.63,371.33 354.48,368.75 358.33,365.99 362.19,363.04 366.04,359.90 369.90,356.59 373.75,353.10 377.60,349.45 381.46,345.64 385.31,341.67 389.17,337.57 393.02,333.33 396.88,328.97 400.73,324.49 404.58,319.91 408.44,315.23 412.29,310.48 416.15,305.66 420.00,300.78 423.85,295.86 427.71,290.91 431.56,285.94 435.42,280.97 439.27,276.01 443.13,271.08 446.98,266.19 450.83,261.34 454.69,256.56 458.54,251.85 462.40,247.24 466.25,242.72 470.10,238.31 473.96,234.02 477.81,229.86 481.67,225.85 485.52,221.98 489.38,218.27 493.23,214.71 497.08,211.33 500.94,208.13 504.79,205.11 508.65,202.27 512.50,199.63 516.35,197.17 520.21,194.92 524.06,192.87 527.92,191.02 531.77,189.38 535.63,187.95 539.48,186.72 543.33,185.71 547.19,184.91 551.04,184.32 554.90,183.95 558.75,183.78 562.60,183.84 566.46,184.10 570.31,184.58 574.17,185.28 578.02,186.18 581.88,187.30 585.73,188.63 589.58,190.17 593.44,191.91 597.29,193.86 601.15,196.01 605.00,198.36 608.85,200.91 612.71,203.65 616.56,206.58 620.42,209.69 624.27,212.99 628.13,216.45 631.98,220.08 635.83,223.87 639.69,227.82 643.54,231.91 647.40,236.13 651.25,240.48 655.10,244.94 658.96,249.51 662.81,254.17 666.67,258.92 670.52,263.73 674.38,268.60 678.23,273.52 682.08,278.47 685.94,283.43 689.79,288.40 693.65,293.36 697.50,298.30 701.35,303.20 705.21,308.05 709.06,312.84 712.92,317.56 716.77,322.19 720.63,326.72 724.48,331.14 728.33,335.44 732.19,339.62 736.04,343.65 739.90,347.54 743.75,351.28 747.60,354.85 751.46,358.25 755.31,361.48 759.17,364.52 763.02,367.38 766.88,370.05 770.73,372.53 774.58,374.80 778.44,376.88 782.29,378.76 786.15,380.42 790.00,381.88 793.85,383.13 797.71,384.17 801.56,385.00 805.42,385.62 809.27,386.02 813.13,386.21 816.98,386.18 820.83,385.94 824.69,385.49 828.54,384.82 832.40,383.94 836.25,382.85 840.10,381.55 843.96,380.04 847.81,378.32 851.67,376.40 855.52,374.27 859.38,371.94 863.23,369.42 867.08,366.70 870.94,363.80 874.79,360.71 878.65,357.44 882.50,353.99 886.35,350.38 890.21,346.61 894.06,342.69 897.92,338.62 901.77,334.41 905.63,330.08 909.48,325.63 913.33,321.07 917.19,316.42 921.04,311.69 924.90,306.88 928.75,302.01 932.60,297.10 936.46,292.16 940.31,287.20 944.17,282.23 948.02,277.26 951.88,272.32 955.73,267.42 959.58,262.56 963.44,257.76 967.29,253.03 971.15,248.39 975.00,243.85 975.00,243.85\" stroke-width=\"2pt\" stroke=\"#cc9900\" /><polyline fill=\"none\" points=\"50.00,171.12 53.85,171.24 57.71,171.57 61.56,172.13 65.42,172.92 69.27,173.92 73.13,175.15 76.98,176.60 80.83,178.27 84.69,180.16 88.54,182.27 92.40,184.59 96.25,187.12 100.10,189.87 103.96,192.82 107.81,195.98 111.67,199.33 115.52,202.89 119.38,206.63 123.23,210.55 127.08,214.65 130.94,218.93 134.79,223.36 138.65,227.95 142.50,232.68 146.35,237.55 150.21,242.53 154.06,247.63 157.92,252.83 161.77,258.11 165.63,263.46 169.48,268.87 173.33,274.33 177.19,279.81 181.04,285.31 184.90,290.81 188.75,296.29 192.60,301.74 196.46,307.15 200.31,312.49 204.17,317.77 208.02,322.95 211.88,328.04 215.73,333.01 219.58,337.86 223.44,342.58 227.29,347.15 231.15,351.57 235.00,355.82 238.85,359.90 242.71,363.81 246.56,367.53 250.42,371.06 254.27,374.39 258.13,377.53 261.98,380.45 265.83,383.18 269.69,385.69 273.54,387.98 277.40,390.07 281.25,391.93 285.10,393.58 288.96,395.00 292.81,396.20 296.67,397.18 300.52,397.94 304.38,398.48 308.23,398.79 312.08,398.87 315.94,398.74 319.79,398.38 323.65,397.79 327.50,396.98 331.35,395.95 335.21,394.70 339.06,393.22 342.92,391.53 346.77,389.61 350.63,387.48 354.48,385.14 358.33,382.58 362.19,379.81 366.04,376.83 369.90,373.65 373.75,370.27 377.60,366.70 381.46,362.94 385.31,358.99 389.17,354.87 393.02,350.58 396.88,346.13 400.73,341.52 404.58,336.77 408.44,331.89 412.29,326.89 416.15,321.78 420.00,316.58 423.85,311.29 427.71,305.93 431.56,300.51 435.42,295.05 439.27,289.56 443.13,284.06 446.98,278.57 450.83,273.09 454.69,267.64 458.54,262.24 462.40,256.90 466.25,251.64 470.10,246.46 473.96,241.39 477.81,236.43 481.67,231.59 485.52,226.90 489.38,222.34 493.23,217.94 497.08,213.71 500.94,209.65 504.79,205.76 508.65,202.06 512.50,198.55 516.35,195.24 520.21,192.13 524.06,189.23 527.92,186.53 531.77,184.04 535.63,181.77 539.48,179.71 543.33,177.87 547.19,176.25 551.04,174.85 554.90,173.67 558.75,172.72 562.60,171.99 566.46,171.48 570.31,171.19 574.17,171.13 578.02,171.29 581.88,171.68 585.73,172.29 589.58,173.12 593.44,174.18 597.29,175.46 601.15,176.96 605.00,178.68 608.85,180.62 612.71,182.77 616.56,185.14 620.42,187.73 624.27,190.52 628.13,193.52 631.98,196.72 635.83,200.12 639.69,203.72 643.54,207.50 647.40,211.47 651.25,215.61 655.10,219.92 658.96,224.39 662.81,229.01 666.67,233.77 670.52,238.67 674.38,243.68 678.23,248.80 682.08,254.02 685.94,259.32 689.79,264.69 693.65,270.11 697.50,275.57 701.35,281.06 705.21,286.56 709.06,292.06 712.92,297.53 716.77,302.97 720.63,308.37 724.48,313.70 728.33,318.95 732.19,324.12 736.04,329.18 739.90,334.13 743.75,338.95 747.60,343.63 751.46,348.17 755.31,352.55 759.17,356.76 763.02,360.81 766.88,364.67 770.73,368.35 774.58,371.83 778.44,375.12 782.29,378.21 786.15,381.09 790.00,383.77 793.85,386.23 797.71,388.48 801.56,390.51 805.42,392.32 809.27,393.92 813.13,395.29 816.98,396.45 820.83,397.38 824.69,398.08 828.54,398.57 832.40,398.83 836.25,398.86 840.10,398.67 843.96,398.26 847.81,397.63 851.67,396.77 855.52,395.68 859.38,394.38 863.23,392.86 867.08,391.11 870.94,389.15 874.79,386.97 878.65,384.57 882.50,381.97 886.35,379.15 890.21,376.13 894.06,372.90 897.92,369.48 901.77,365.86 905.63,362.06 909.48,358.07 913.33,353.91 917.19,349.58 921.04,345.09 924.90,340.46 928.75,335.68 932.60,330.77 936.46,325.74 940.31,320.61 944.17,315.38 948.02,310.08 951.88,304.70 955.73,299.27 959.58,293.81 963.44,288.31 967.29,282.82 971.15,277.32\" stroke-width=\"2pt\" stroke=\"#ccac00\" /><polyline fill=\"none\" points=\"50.00,158.47 53.85,158.59 57.71,158.93 61.56,159.50 65.42,160.30 69.27,161.33 73.13,162.59 76.98,164.08 80.83,165.79 84.69,167.73 88.54,169.90 92.40,172.29 96.25,174.90 100.10,177.74 103.96,180.80 107.81,184.07 111.67,187.55 115.52,191.25 119.38,195.15 123.23,199.25 127.08,203.55 130.94,208.04 134.79,212.71 138.65,217.55 142.50,222.55 146.35,227.71 150.21,233.02 154.06,238.46 157.92,244.01 161.77,249.68 165.63,255.44 169.48,261.28 173.33,267.18 177.19,273.13 181.04,279.11 184.90,285.10 188.75,291.10 192.60,297.08 196.46,303.03 200.31,308.93 204.17,314.76 208.02,320.52 211.88,326.18 215.73,331.73 219.58,337.17 223.44,342.47 227.29,347.62 231.15,352.62 235.00,357.46 238.85,362.12 242.71,366.60 246.56,370.89 250.42,374.99 254.27,378.88 258.13,382.57 261.98,386.05 265.83,389.31 269.69,392.36 273.54,395.19 277.40,397.80 281.25,400.18 285.10,402.34 288.96,404.27 292.81,405.98 296.67,407.46 300.52,408.71 304.38,409.73 308.23,410.52 312.08,411.09 315.94,411.42 319.79,411.53 323.65,411.41 327.50,411.05 331.35,410.47 335.21,409.66 339.06,408.63 342.92,407.36 346.77,405.87 350.63,404.14 354.48,402.20 358.33,400.02 362.19,397.62 366.04,395.00 369.90,392.16 373.75,389.09 377.60,385.81 381.46,382.32 385.31,378.62 389.17,374.71 393.02,370.60 396.88,366.30 400.73,361.80 404.58,357.13 408.44,352.28 412.29,347.27 416.15,342.10 420.00,336.79 423.85,331.35 427.71,325.79 431.56,320.12 435.42,314.36 439.27,308.52 443.13,302.62 446.98,296.67 450.83,290.69 454.69,284.69 458.54,278.69 462.40,272.71 466.25,266.76 470.10,260.87 473.96,255.04 477.81,249.28 481.67,243.63 485.52,238.08 489.38,232.65 493.23,227.35 497.08,222.20 500.94,217.21 504.79,212.38 508.65,207.72 512.50,203.25 516.35,198.96 520.21,194.87 524.06,190.99 527.92,187.30 531.77,183.83 535.63,180.58 539.48,177.54 543.33,174.72 547.19,172.12 551.04,169.74 554.90,167.59 558.75,165.67 562.60,163.97 566.46,162.50 570.31,161.25 574.17,160.24 578.02,159.46 581.88,158.90 585.73,158.57 589.58,158.47 593.44,158.60 597.29,158.96 601.15,159.55 605.00,160.37 608.85,161.41 612.71,162.69 616.56,164.19 620.42,165.92 624.27,167.88 628.13,170.06 631.98,172.46 635.83,175.09 639.69,177.95 643.54,181.02 647.40,184.30 651.25,187.80 655.10,191.51 658.96,195.43 662.81,199.55 666.67,203.86 670.52,208.36 674.38,213.04 678.23,217.89 682.08,222.91 685.94,228.08 689.79,233.39 693.65,238.84 697.50,244.40 701.35,250.08 705.21,255.84 709.06,261.68 712.92,267.59 716.77,273.54 720.63,279.52 724.48,285.52 728.33,291.52 732.19,297.50 736.04,303.44 739.90,309.34 743.75,315.17 747.60,320.92 751.46,326.57 755.31,332.12 759.17,337.54 763.02,342.83 766.88,347.98 770.73,352.97 774.58,357.79 778.44,362.44 782.29,366.91 786.15,371.18 790.00,375.27 793.85,379.15 797.71,382.82 801.56,386.28 805.42,389.53 809.27,392.57 813.13,395.38 816.98,397.97 820.83,400.34 824.69,402.48 828.54,404.40 832.40,406.09 836.25,407.55 840.10,408.78 843.96,409.79 847.81,410.57 851.67,411.12 855.52,411.44 859.38,411.53 863.23,411.39 867.08,411.02 870.94,410.42 874.79,409.60 878.65,408.55 882.50,407.26 886.35,405.75 890.21,404.02 894.06,402.05 897.92,399.86 901.77,397.45 905.63,394.81 909.48,391.95 913.33,388.87 917.19,385.58 921.04,382.07 924.90,378.35 928.75,374.43 932.60,370.31 936.46,365.99 940.31,361.48 944.17,356.80 948.02,351.94 951.88,346.92 955.73,341.74 959.58,336.42 963.44,330.97 967.29,325.40 971.15,319.72\" stroke-width=\"2pt\" stroke=\"#ccbf00\" /><polyline fill=\"none\" points=\"50.00,145.82 53.85,145.93 57.71,146.28 61.56,146.85 65.42,147.65 69.27,148.68 73.13,149.94 76.98,151.43 80.83,153.15 84.69,155.10 88.54,157.28 92.40,159.69 96.25,162.32 100.10,165.19 103.96,168.28 107.81,171.59 111.67,175.14 115.52,178.90 119.38,182.88 123.23,187.07 127.08,191.48 130.94,196.09 134.79,200.90 138.65,205.91 142.50,211.09 146.35,216.46 150.21,221.99 154.06,227.68 157.92,233.51 161.77,239.47 165.63,245.55 169.48,251.74 173.33,258.01 177.19,264.36 181.04,270.76 184.90,277.20 188.75,283.66 192.60,290.12 196.46,296.57 200.31,302.99 204.17,309.36 208.02,315.67 211.88,321.89 215.73,328.02 219.58,334.03 223.44,339.92 227.29,345.67 231.15,351.26 235.00,356.70 238.85,361.96 242.71,367.04 246.56,371.94 250.42,376.63 254.27,381.12 258.13,385.41 261.98,389.48 265.83,393.33 269.69,396.96 273.54,400.37 277.40,403.56 281.25,406.52 285.10,409.25 288.96,411.75 292.81,414.02 296.67,416.07 300.52,417.88 304.38,419.47 308.23,420.82 312.08,421.95 315.94,422.85 319.79,423.51 323.65,423.95 327.50,424.16 331.35,424.14 335.21,423.89 339.06,423.42 342.92,422.71 346.77,421.77 350.63,420.61 354.48,419.21 358.33,417.59 362.19,415.74 366.04,413.65 369.90,411.34 373.75,408.80 377.60,406.03 381.46,403.03 385.31,399.81 389.17,396.36 393.02,392.69 396.88,388.80 400.73,384.69 404.58,380.37 408.44,375.85 412.29,371.12 416.15,366.19 420.00,361.08 423.85,355.79 427.71,350.32 431.56,344.70 435.42,338.93 439.27,333.02 443.13,326.98 446.98,320.84 450.83,314.60 454.69,308.28 458.54,301.90 462.40,295.48 466.25,289.02 470.10,282.56 473.96,276.10 477.81,269.67 481.67,263.28 485.52,256.94 489.38,250.68 493.23,244.51 497.08,238.45 500.94,232.51 504.79,226.70 508.65,221.04 512.50,215.54 516.35,210.20 520.21,205.04 524.06,200.07 527.92,195.29 531.77,190.72 535.63,186.35 539.48,182.19 543.33,178.24 547.19,174.52 551.04,171.02 554.90,167.74 558.75,164.68 562.60,161.86 566.46,159.26 570.31,156.89 574.17,154.75 578.02,152.84 581.88,151.16 585.73,149.71 589.58,148.49 593.44,147.50 597.29,146.74 601.15,146.20 605.00,145.90 608.85,145.82 612.71,145.98 616.56,146.36 620.42,146.97 624.27,147.81 628.13,148.88 631.98,150.18 635.83,151.71 639.69,153.47 643.54,155.45 647.40,157.67 651.25,160.12 655.10,162.79 658.96,165.70 662.81,168.83 666.67,172.18 670.52,175.76 674.38,179.56 678.23,183.58 682.08,187.81 685.94,192.25 689.79,196.89 693.65,201.74 697.50,206.77 701.35,211.99 705.21,217.39 709.06,222.95 712.92,228.66 716.77,234.51 720.63,240.50 724.48,246.60 728.33,252.80 732.19,259.08 736.04,265.44 739.90,271.85 743.75,278.29 747.60,284.75 751.46,291.22 755.31,297.66 759.17,304.08 763.02,310.44 766.88,316.73 770.73,322.94 774.58,329.04 778.44,335.04 782.29,340.90 786.15,346.63 790.00,352.20 793.85,357.61 797.71,362.84 801.56,367.89 805.42,372.75 809.27,377.41 813.13,381.87 816.98,386.11 820.83,390.15 824.69,393.96 828.54,397.56 832.40,400.93 836.25,404.08 840.10,407.00 843.96,409.69 847.81,412.15 851.67,414.39 855.52,416.39 859.38,418.17 863.23,419.71 867.08,421.03 870.94,422.12 874.79,422.98 878.65,423.60 882.50,424.00 886.35,424.17 890.21,424.12 894.06,423.83 897.92,423.31 901.77,422.57 905.63,421.59 909.48,420.39 913.33,418.96 917.19,417.29 921.04,415.40 924.90,413.28 928.75,410.93 932.60,408.35 936.46,405.54 940.31,402.50 944.17,399.24 948.02,395.75 951.88,392.05 955.73,388.12 959.58,383.98 963.44,379.62 967.29,375.06 971.15,370.30\" stroke-width=\"2pt\" stroke=\"#ccd200\" /><polyline fill=\"none\" points=\"50.00,133.17 53.85,133.28 57.71,133.61 61.56,134.17 65.42,134.96 69.27,135.96 73.13,137.20 76.98,138.66 80.83,140.34 84.69,142.26 88.54,144.40 92.40,146.77 96.25,149.37 100.10,152.20 103.96,155.25 107.81,158.54 111.67,162.06 115.52,165.80 119.38,169.77 123.23,173.97 127.08,178.39 130.94,183.02 134.79,187.87 138.65,192.94 142.50,198.20 146.35,203.66 150.21,209.31 154.06,215.14 157.92,221.14 161.77,227.30 165.63,233.60 169.48,240.03 173.33,246.58 177.19,253.23 181.04,259.96 184.90,266.77 188.75,273.62 192.60,280.50 196.46,287.39 200.31,294.28 204.17,301.14 208.02,307.96 211.88,314.72 215.73,321.40 219.58,327.98 223.44,334.45 227.29,340.79 231.15,346.99 235.00,353.04 238.85,358.92 242.71,364.63 246.56,370.15 250.42,375.47 254.27,380.60 258.13,385.52 261.98,390.22 265.83,394.70 269.69,398.97 273.54,403.01 277.40,406.82 281.25,410.41 285.10,413.77 288.96,416.89 292.81,419.79 296.67,422.46 300.52,424.90 304.38,427.11 308.23,429.09 312.08,430.85 315.94,432.38 319.79,433.68 323.65,434.76 327.50,435.61 331.35,436.24 335.21,436.64 339.06,436.82 342.92,436.78 346.77,436.51 350.63,436.02 354.48,435.31 358.33,434.37 362.19,433.20 366.04,431.81 369.90,430.20 373.75,428.35 377.60,426.28 381.46,423.98 385.31,421.45 389.17,418.69 393.02,415.71 396.88,412.49 400.73,409.04 404.58,405.37 408.44,401.47 412.29,397.34 416.15,392.99 420.00,388.42 423.85,383.63 427.71,378.63 431.56,373.43 435.42,368.03 439.27,362.44 443.13,356.66 446.98,350.71 450.83,344.60 454.69,338.34 458.54,331.95 462.40,325.44 466.25,318.81 470.10,312.10 473.96,305.32 477.81,298.48 481.67,291.61 485.52,284.72 489.38,277.83 493.23,270.95 497.08,264.12 500.94,257.34 504.79,250.64 508.65,244.02 512.50,237.52 516.35,231.14 520.21,224.89 524.06,218.79 527.92,212.86 531.77,207.10 535.63,201.52 539.48,196.13 543.33,190.95 547.19,185.97 551.04,181.20 554.90,176.64 558.75,172.31 562.60,168.20 566.46,164.32 570.31,160.66 574.17,157.24 578.02,154.04 581.88,151.07 585.73,148.33 589.58,145.82 593.44,143.54 597.29,141.49 601.15,139.66 605.00,138.06 608.85,136.69 612.71,135.55 616.56,134.62 620.42,133.93 624.27,133.46 628.13,133.21 631.98,133.18 635.83,133.38 639.69,133.80 643.54,134.45 647.40,135.32 651.25,136.42 655.10,137.74 658.96,139.28 662.81,141.06 666.67,143.06 670.52,145.29 674.38,147.75 678.23,150.44 682.08,153.35 685.94,156.50 689.79,159.88 693.65,163.48 697.50,167.31 701.35,171.37 705.21,175.66 709.06,180.16 712.92,184.88 716.77,189.81 720.63,194.95 724.48,200.30 728.33,205.83 732.19,211.55 736.04,217.45 739.90,223.51 743.75,229.72 747.60,236.08 751.46,242.56 755.31,249.15 759.17,255.83 763.02,262.60 766.88,269.42 770.73,276.28 774.58,283.17 778.44,290.07 782.29,296.95 786.15,303.79 790.00,310.59 793.85,317.32 797.71,323.96 801.56,330.50 805.42,336.92 809.27,343.21 813.13,349.36 816.98,355.34 820.83,361.16 824.69,366.79 828.54,372.24 832.40,377.49 836.25,382.53 840.10,387.37 843.96,391.99 847.81,396.39 851.67,400.56 855.52,404.52 859.38,408.24 863.23,411.74 867.08,415.01 870.94,418.05 874.79,420.86 878.65,423.44 882.50,425.79 886.35,427.91 890.21,429.80 894.06,431.47 897.92,432.91 901.77,434.13 905.63,435.12 909.48,435.88 913.33,436.42 917.19,436.74 921.04,436.83 924.90,436.70 928.75,436.35 932.60,435.77 936.46,434.97 940.31,433.94 944.17,432.69 948.02,431.21 951.88,429.51 955.73,427.58 959.58,425.42 963.44,423.03 967.29,420.41 971.15,417.56 975.00,414.49 975.00,414.49\" stroke-width=\"2pt\" stroke=\"#cce500\" /><polyline fill=\"none\" points=\"50.00,120.51 53.85,120.62 57.71,120.94 61.56,121.47 65.42,122.22 69.27,123.19 73.13,124.36 76.98,125.76 80.83,127.37 84.69,129.21 88.54,131.26 92.40,133.54 96.25,136.04 100.10,138.77 103.96,141.72 107.81,144.90 111.67,148.31 115.52,151.95 119.38,155.82 123.23,159.91 127.08,164.24 130.94,168.79 134.79,173.57 138.65,178.57 142.50,183.79 146.35,189.23 150.21,194.87 154.06,200.71 157.92,206.75 161.77,212.97 165.63,219.36 169.48,225.91 173.33,232.62 177.19,239.45 181.04,246.40 184.90,253.46 188.75,260.60 192.60,267.80 196.46,275.05 200.31,282.33 204.17,289.61 208.02,296.89 211.88,304.12 215.73,311.31 219.58,318.43 223.44,325.46 227.29,332.38 231.15,339.18 235.00,345.85 238.85,352.36 242.71,358.71 246.56,364.88 250.42,370.87 254.27,376.66 258.13,382.24 261.98,387.62 265.83,392.78 269.69,397.72 273.54,402.44 277.40,406.94 281.25,411.20 285.10,415.24 288.96,419.04 292.81,422.62 296.67,425.97 300.52,429.09 304.38,431.98 308.23,434.65 312.08,437.09 315.94,439.31 319.79,441.30 323.65,443.08 327.50,444.63 331.35,445.97 335.21,447.09 339.06,448.00 342.92,448.69 346.77,449.17 350.63,449.43 354.48,449.48 358.33,449.32 362.19,448.94 366.04,448.35 369.90,447.54 373.75,446.52 377.60,445.28 381.46,443.83 385.31,442.16 389.17,440.27 393.02,438.15 396.88,435.82 400.73,433.25 404.58,430.47 408.44,427.45 412.29,424.21 416.15,420.74 420.00,417.04 423.85,413.11 427.71,408.96 431.56,404.57 435.42,399.95 439.27,395.12 443.13,390.06 446.98,384.78 450.83,379.29 454.69,373.59 458.54,367.70 462.40,361.61 466.25,355.34 470.10,348.91 473.96,342.31 477.81,335.57 481.67,328.71 485.52,321.72 489.38,314.65 493.23,307.49 497.08,300.27 500.94,293.01 504.79,285.73 508.65,278.45 512.50,271.18 516.35,263.95 520.21,256.78 524.06,249.69 527.92,242.68 531.77,235.79 535.63,229.03 539.48,222.40 543.33,215.93 547.19,209.63 551.04,203.51 554.90,197.57 558.75,191.84 562.60,186.30 566.46,180.98 570.31,175.88 574.17,171.00 578.02,166.34 581.88,161.90 585.73,157.70 589.58,153.73 593.44,149.98 597.29,146.46 601.15,143.18 605.00,140.12 608.85,137.29 612.71,134.68 616.56,132.30 620.42,130.14 624.27,128.20 628.13,126.49 631.98,124.99 635.83,123.71 639.69,122.65 643.54,121.80 647.40,121.16 651.25,120.74 655.10,120.54 658.96,120.54 662.81,120.76 666.67,121.20 670.52,121.85 674.38,122.71 678.23,123.79 682.08,125.08 685.94,126.59 689.79,128.33 693.65,130.28 697.50,132.45 701.35,134.85 705.21,137.47 709.06,140.31 712.92,143.39 716.77,146.69 720.63,150.22 724.48,153.98 728.33,157.97 732.19,162.19 736.04,166.64 739.90,171.31 743.75,176.21 747.60,181.33 751.46,186.66 755.31,192.21 759.17,197.96 763.02,203.91 766.88,210.04 770.73,216.36 774.58,222.84 778.44,229.47 782.29,236.24 786.15,243.14 790.00,250.15 793.85,257.26 797.71,264.43 801.56,271.66 805.42,278.93 809.27,286.21 813.13,293.49 816.98,300.75 820.83,307.97 824.69,315.12 828.54,322.19 832.40,329.17 836.25,336.03 840.10,342.76 843.96,349.34 847.81,355.77 851.67,362.02 855.52,368.09 859.38,373.98 863.23,379.66 867.08,385.14 870.94,390.40 874.79,395.44 878.65,400.27 882.50,404.87 886.35,409.24 890.21,413.38 894.06,417.30 897.92,420.98 901.77,424.44 905.63,427.66 909.48,430.66 913.33,433.43 917.19,435.98 921.04,438.30 924.90,440.40 928.75,442.28 932.60,443.93 936.46,445.37 940.31,446.60 944.17,447.60 948.02,448.39 951.88,448.97 955.73,449.33 959.58,449.48 963.44,449.42 967.29,449.14 971.15,448.65\" stroke-width=\"2pt\" stroke=\"#ccf900\" /><g stroke=\"black\"><line x1=\"50.00\" x2=\"50.00\" y1=\"550.00\" y2=\"560.00\" /><line x1=\"281.25\" x2=\"281.25\" y1=\"550.00\" y2=\"560.00\" /><line x1=\"512.50\" x2=\"512.50\" y1=\"550.00\" y2=\"560.00\" /><line x1=\"743.75\" x2=\"743.75\" y1=\"550.00\" y2=\"560.00\" /><line x1=\"975.00\" x2=\"975.00\" y1=\"550.00\" y2=\"560.00\" /><g fill=\"black\" font-family=\"Arial, sans-serif\" font-size=\"10\" stroke=\"none\" text-anchor=\"middle\"><text x=\"50.00\" y=\"570.00\">0.00</text><text x=\"281.25\" y=\"570.00\">1.00</text><text x=\"512.50\" y=\"570.00\">2.00</text><text x=\"743.75\" y=\"570.00\">3.00</text><text x=\"975.00\" y=\"570.00\">4.00</text></g><line x1=\"50.00\" x2=\"975.00\" y1=\"550.00\" y2=\"550.00\" /></g><g stroke=\"black\"><line x1=\"50.00\" x2=\"40.00\" y1=\"538.06\" y2=\"538.06\" /><line x1=\"50.00\" x2=\"40.00\" y1=\"453.70\" y2=\"453.70\" /><line x1=\"50.00\" x2=\"40.00\" y1=\"369.35\" y2=\"369.35\" /><line x1=\"50.00\" x2=\"40.00\" y1=\"285.00\" y2=\"285.00\" /><line x1=\"50.00\" x2=\"40.00\" y1=\"200.65\" y2=\"200.65\" /><line x1=\"50.00\" x2=\"40.00\" y1=\"116.30\" y2=\"116.30\" /><line x1=\"50.00\" x2=\"40.00\" y1=\"31.94\" y2=\"31.94\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"538.06\" y2=\"538.06\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"521.19\" y2=\"521.19\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"504.32\" y2=\"504.32\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"487.45\" y2=\"487.45\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"470.57\" y2=\"470.57\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"453.70\" y2=\"453.70\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"436.83\" y2=\"436.83\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"419.96\" y2=\"419.96\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"403.09\" y2=\"403.09\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"386.22\" y2=\"386.22\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"369.35\" y2=\"369.35\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"352.48\" y2=\"352.48\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"335.61\" y2=\"335.61\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"318.74\" y2=\"318.74\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"301.87\" y2=\"301.87\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"285.00\" y2=\"285.00\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"268.13\" y2=\"268.13\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"251.26\" y2=\"251.26\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"234.39\" y2=\"234.39\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"217.52\" y2=\"217.52\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"200.65\" y2=\"200.65\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"183.78\" y2=\"183.78\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"166.91\" y2=\"166.91\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"150.04\" y2=\"150.04\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"133.17\" y2=\"133.17\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"116.30\" y2=\"116.30\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"99.43\" y2=\"99.43\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"82.55\" y2=\"82.55\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"65.68\" y2=\"65.68\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"48.81\" y2=\"48.81\" /><line x1=\"50.00\" x2=\"45.00\" y1=\"31.94\" y2=\"31.94\" /><g fill=\"black\" font-family=\"Arial, sans-serif\" font-size=\"10\" stroke=\"none\" text-anchor=\"end\"><text x=\"35.00\" y=\"538.06\">-3.00</text><text x=\"35.00\" y=\"453.70\">-2.00</text><text x=\"35.00\" y=\"369.35\">-1.00</text><text x=\"35.00\" y=\"285.00\">0.00</text><text x=\"35.00\" y=\"200.65\">1.00</text><text x=\"35.00\" y=\"116.30\">2.00</text><text x=\"35.00\" y=\"31.94\">3.00</text></g><line x1=\"50.00\" x2=\"50.00\" y1=\"550.00\" y2=\"20.00\" /></g></g></svg>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(->> spec\n",
    "     viz/svg-plot2d-cartesian\n",
    "     (svg/svg {:width 985 :height 600})\n",
    "     svg/serialize\n",
    "     display/html)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$$\\frac{1}{2}\\,{l}^{2}\\,m\\,{\\dot {\\theta}}^{2} - g\\,l\\,m\\,\\cos\\left(\\theta\\right)$$"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(tex ((Lagrangian->energy (L 'm 'l 'g)) (up 't 'theta 'thetadot)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The energy of the system is conserved. Assuming we raise the bob to an angle $\\theta_0$ and release it, the total energy must remain equal to the potential energy initially present:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$$- g\\,l\\,m\\,\\cos\\left({\\theta}_0\\right)$$"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(tex ((pendulum/V 'm 'l 'g fixed) (up 't 'theta_0 'thetadot_0)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Equating these expressions allows us to write $\\dot\\theta$ in terms of $\\theta$ and $\\theta_0$. We can then form the integral for the period \n",
    "$$\\mathrm{period}(\\theta_0)=4\\int_0^{\\theta_0}\\frac{1}{\\dot\\theta}d\\theta$$\n",
    "We find that\n",
    "$$\\mathrm{period}(\\theta_0)=\\frac{4}{\\sqrt{2g}}\\int_0^{\\theta_0}\\frac{1}{\\sqrt{\\cos\\theta - \\cos\\theta_0}}d\\theta$$\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "#'double-pendulum/period-broken"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(defn integrand [theta_0]\n",
    "    (fn [theta] (/ (sqrt (- (cos theta) (cos theta_0))))))\n",
    "(defn period-broken [theta_0]\n",
    "    (* (/ 4 (* 2 g)) (definite-integral (integrand theta_0) 0 (- theta_0 0.00001) )))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We interrupt this broadcast to inform the viewers that the integrator we are currently using is not up to the task of computing this improper integral (the integrand blows up at the right-hand edge of the interval). I tried a few other integrators in Apache Commons Math, without success. Scmutils itself is equipped with integrators specially designed to handle integrals with singularities at the endpoints, but we have not ported them here. So we will take another tack: consider the [solution of the integral](https://en.wikipedia.org/wiki/Pendulum_%28mathematics%29#Arbitrary-amplitude_period) in terms of $F$, the [elliptic integral of the first kind](http://mathworld.wolfram.com/EllipticIntegraloftheFirstKind.html):\n",
    "$$\\mathrm{period}(\\theta_0)=\\frac{8}{\\sqrt{2g}}\\frac{F(\\frac{\\theta_0}{2},\\csc\\frac{\\theta_0}{2})}{\\sqrt{1-\\cos(\\theta_0)}}$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "#'double-pendulum/period"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(defn period [theta_0]\n",
    "    (let [t (/ theta_0 2)]\n",
    "        (/ (* 8 (elliptic-f t (csc t)))\n",
    "           (* (sqrt (* 2 g)) (sqrt (- 1 (cos theta_0)))))))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><th>&theta;<sub>0</sub><br/>radians</th><th>period</th></thead><tr><td>    0.15</td><td>  2.0099</td></tr><tr><td>    0.30</td><td>  2.0184</td></tr><tr><td>    0.45</td><td>  2.0328</td></tr><tr><td>    0.60</td><td>  2.0532</td></tr><tr><td>    0.75</td><td>  2.0800</td></tr><tr><td>    0.90</td><td>  2.1137</td></tr><tr><td>    1.05</td><td>  2.1548</td></tr><tr><td>    1.20</td><td>  2.2042</td></tr><tr><td>    1.35</td><td>  2.2629</td></tr><tr><td>    1.50</td><td>  2.3322</td></tr><tr><td>    1.65</td><td>  2.4138</td></tr><tr><td>    1.80</td><td>  2.5102</td></tr><tr><td>    1.95</td><td>  2.6244</td></tr></table>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(display/hiccup-html\n",
    "    [:table\n",
    "     [:thead [:th \"&theta;<sub>0</sub><br/>radians\"] [:th \"period\"]]\n",
    "     (for [A (range 0.15 2 0.15)]\n",
    "          [:tr [:td (format \"%8.02f\" A)] [:td (format \"%8.04f\" (period A))]])])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Clojure",
   "language": "clojure",
   "name": "clojure"
  },
  "language_info": {
   "file_extension": ".clj",
   "mimetype": "text/x-clojure",
   "name": "clojure",
   "version": "1.8.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
